package com.example.software.vo;

import com.baomidou.mybatisplus.annotation.TableId;
import com.example.software.entity.DoctorEntity;
import com.example.software.entity.UserEntity;
import com.example.software.entity.WorkdayEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.sql.Time;
import java.time.LocalDateTime;
import java.util.Date;


@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel(description = "病人预约详情返回的数据格式")
public class RecodeVO {

    /**
     * 主键ID
     */
    @ApiModelProperty("主键id")
    private Long id;
    /**
     * 用户id
     */
    @ApiModelProperty("病人用户id")
    private Long userId;

    @ApiModelProperty("病人用户信息")
    private UserEntity user;
    /**
     * 工作日id
     */
    @ApiModelProperty("工作日id")
    private Long workdayId;

    @ApiModelProperty("工作日信息")
    private workdayVO workday;
    /**
     * 医生id
     */
    @ApiModelProperty("医生id")
    private Long doctorId;

    @ApiModelProperty("医生信息")
    private DoctorEntity doctor;

    /**
     * 就诊序号
     */
    @ApiModelProperty("就诊序号")
    private Integer serialNumber;
    /**
     * 就诊日期
     */
    @ApiModelProperty("就诊日期")
    private String visitDay;
    /**
     * 就诊上午或下午
     */
    @ApiModelProperty("就诊上午（0）或下午（1）或晚上（2）")
    private Integer visitNoon;
    /**
     * 就诊时间
     */
    @ApiModelProperty("就诊时间")
    private Time visitTime;
    /**
     * 预约记录的时间
     */
    @ApiModelProperty("预约记录的时间")
    private LocalDateTime orderTime;
    /**
     * 预约状态：成功，取消，完成，爽约
     */
    @ApiModelProperty("预约状态：1:成功，0:取消，2:已支付，3:爽约，4已核销，5已就诊")
    private Integer state;

    @ApiModelProperty("支付方式：1:医保卡支付，2:普通支付")
    private Integer paymentType;

    @ApiModelProperty("支付金额")
    private BigDecimal payment;

    @ApiModelProperty("二维码")
    private String qrCode;


}
